Automatic feed creation for non-feed enabled information objects

ABSTRACT

Information regarding a mobile user&#39;s context including but not limited to current mobile activity, social relations and associations history, and past mobile, search and browsing history is identified and converted to metadata. Metadata is also applied to content sources delivering content to a search engine or personalized content engine. The metadata is used in part to determine the relative display of content objects delivered to the mobile user as search results or a personalized aggregated information resource, e.g., home page. The user may select information, from one or more entities or search results or as presented to the user in other contexts, to be automatically delivered to the user&#39;s home page as a content feed including multiple content objects or content feeds associated with an entity. Information regarding mobile user activity is compiled and used to permit publishers and advertisers to identify target candidates to receive advertisements or marketing materials.

PRIORITY CLAIMS AND RELATED APPLICATIONS

This application claims domestic priority to the following U.S.provisional applications:

-   (1) U.S. Provisional Application Ser. No. 61/068,086, filed Mar. 3,    2008, entitled “OnePlace Content Aggregation, Syndication, Sharing    and Updating,” and-   (2) U.S. Provisional Application Ser. No. 61/041,590, filed Apr. 1,    2008, entitled “Open Framework For Integrating, Associating, and    Interacting With Search Results,”    This application also claims domestic priority under 35 U.S.C.§120    as a continuation-in-part of the following U.S. non-provisional    applications:-   (1) U.S. patent application Ser. No. 12/069,731, filed Feb. 11,    2008, entitled “Identifying and Employing Latent Social Network    Relationships,”-   (2) U.S. patent application Ser. No. 12/182,715, filed Jul. 30,    2008, entitled “Mechanisms for Content Aggregation, Syndication,    Sharing, and Updating,”-   (3) U.S. Pat. No. 8,032,510, filed Jul. 30, 2008, entitled “Social    Aspects of Content Aggregation, Syndication, Sharing, and Updating,”-   (4) U.S. Pat. No. 7,756,903, filed Dec. 12, 2006, entitled    “Configuring a Search Engine Results Page With Environment-Specific    Information,”-   (5) U.S. Pat. No. 7,630,972, filed Jan. 5, 2007, entitled “Clustered    Search Processing.”    This application also claims domestic priority under 35 U.S.C.§120    as a continuation of the following U.S. non-provisional application:-   (1) U.S. patent application Ser. No. 12/371,916, filed Feb. 17,    2009, entitled “Open Framework For Integrating, Associating, And    Interacting With Content Objects Including Automatic Feed Creation.”    The contents of all provisional and non-provisional applications    listed above are incorporated by reference herein.

FIELD OF THE INVENTION

The present invention relates generally to search queries over a networkand user configuration of feeds and clusters in conjunction with amobile device.

BACKGROUND

The approaches described in this section are approaches that could bepursued, but not necessarily approaches that have been previouslyconceived or pursued. Therefore, unless otherwise indicated, theapproaches described in this section may not be prior art to the claimsin this application and are not admitted to be prior art by inclusion inthis section.

Tremendous changes have been occurring in the Internet that influenceour everyday lives. For example, in today's society, mobile computingdevices are becoming ubiquitous. Many mobile computing devices, such aspersonal digital assistants, cellular phones, and the like, may beemployed to communicate voice messages, emails, text messages, and soforth, as well as to search for information over the Internet. It is notuncommon to see a person on a bus, train, or boat to be using theirmobile devices to search for merchants, restaurants, music, businesses,or the like. It is conceivable these devices will eventually be allowedon planes, at least for wireless Internet access.

Translating the traditional web page browsing interaction and contentconsumption experience to the mobile environment has generally resultedin less-than-satisfactory experiences for the user due to a variety ofreasons. In a mobile device, screen real estate is at a minimum.Navigation of any presented information may be dependent upon, orsubject to the quirks of, the particular mobile device. Typically, theuser is not in an environment conducive to casual exploration of theWorld Wide Web. In fact, the user may be in a changing environment thatitself demands the lion's share of the user's attention. Thus thetailoring of search engine results and content consumption to the mobileexperience is of prime importance to the user.

Along with the desire to perform relevant active information searches,some mobile device users may desire delivery of content in a moreautomatic manner, possibly with the content tailored to a unique set ofinterests, such as hobbies or social network groups. Even if a user hasthe time, energy, and technical skills necessary to manually configure amobile device, the user will likely be forced to remain content toreceive a narrow set of pre-defined information sources, such as newsheadlines, weather and sports. Yet other users may desire delivery ofparticular content depending on the current user environment.

Similarly, advertisers desire to provide information that is tailored toeach user and enhances the user experience. An advertiser canapproximate this goal through delivery of advertising material as partof delivery of search engine results, because of the likely correlationbetween the user search terms and the user's actual interests. However,in the mobile environment when the user is not searching, advertiserstypically have limited ability to reach a target audience that is likelyon the move and in need of information relevant to the environment theyare in or going to.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a system diagram of one embodiment of an environment in whichthe invention may be practiced;

FIG. 2 illustrates a sample search and clustered search results on amobile device;

FIG. 3 illustrates the clustering achieved through the use of metadatawrappers applied in a social networking context;

FIG. 4 illustrates the generation of results based on a search yieldingno named cluster results;

FIG. 5 illustrates a mobile user search system performing a federatedquery to multiple data sources in which third parties provide plug inmodules to interpret their data into a format usable by the search;

FIG. 6 illustrates a sample framework for the plug-ins shown in FIG. 5;

FIG. 7 illustrates a schematic of an Add Anything Engine;

FIG. 8 illustrates a schematic of a Mobile Homepage Targeting Engine;

FIG. 9 illustrates a portion of a sample use of the Add Anything Engine;

FIG. 10 illustrates a portion of a sample use of the Add AnythingEngine;

FIG. 11 illustrates a portion of a sample use of the Add AnythingEngine;

FIG. 12 illustrates a complete screen shot (with portions omitted) of amobile device resulting from the performance operations illustrated inFIGS. 9-11;

FIG. 13 illustrates information associated with the entity “Boston RedSox”;

FIG. 14 illustrates user configuration screens used in conjunction withvarious embodiments of the invention;

FIG. 15 illustrates a subset of the oneSearch entity types organized byhierarchical type-subtype relations; and

FIG. 16 is a block diagram of a computer system on which embodiments ofthe invention may be implemented.

DETAILED DESCRIPTION

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the present invention. It will be apparent, however,that the present invention may be practiced without these specificdetails. In other instances, well-known structures and devices are shownin block diagram form in order to avoid unnecessarily obscuring thepresent invention.

Overview

Techniques are disclosed herein to enrich a mobile user's personalizedcontent consumption, web browsing and search experience by incorporatingthe user's current mobile activity, social relations and associationhistories as well as historical search and browsing data to personalizemany aspects of the user's mix of mobile content and configuration ofinformation displayed on the user's mobile device or aggregated on apersonalized home page. These techniques may be automatically applied,or performed by the user. A content object may be any form or format ofcontent that is consumable by users such as, but not limited to, any oneor more of the following: text, numerical data, images, animation,audio, video or any combination thereof including content encountered assearch results, through browsing or from communications with othersthrough voice, email, text, image, animation, gesture, audio or video.Content may come from any data processing source or device.

For example, in an embodiment, contextual information related to theuser's current activity is derived from the mobile device or othersources, and passed to a search engine as metadata in order to reordergeneric search results into a personalized result set including a systemand method for personalizing mobile user content requests, i.e.,searches or dynamic page assembly requests by augmenting a mobile user'sinput with a first set of metadata derived from the context of theinput, including location information to match the request and rank orre-rank the results

In an embodiment, one or more content objects are displayed on a mobiledevice. For each content object selected by a user, one or more entitiesor entity types are determined to correlate to the selected contentobject. Based at least in part on the determined entity or entity type,an information feed is created. The user may incorporate the informationfeed into the user's home page or device and automatically receiveupdates based on the web page or information corresponding to thecontent object, entity or associated information sources.

In an embodiment, a set of search results is displayed on a mobiledevice. For each search result selected by a user, an entity or entitytype is determined for the selected search result. Based at least inpart on the determined entity or entity type, an information feed iscreated. The user may incorporate the information feed into the user'shome page or device and automatically receive updates based on the webpage or information corresponding to the search result or informationresource when users annotate results to cause the future inclusion ofthat source, result, or search type in their mobile “home page.”

In an embodiment, a set of users are ranked against a selectedadvertiser or product. From the set of users, candidate targets arepredicted for a set of one or more advertisers and conditions, based atleast in part on the context of the user, the advertisement copy and apre-selected time for refining, qualifying and scoring users for anadvertiser based upon the actual hierarchical content configurations ofthe user's mobile home page and the interaction and usage data of theuser with the home page over time.

In an embodiment, (1) a user's content consumption and communications onthe user's mobile device(s), along with (2) the preferences andactivities that the user performs in configuring, consuming, interactingwith, and sharing content, as well as (3) the contexts in which and thepeople with whom the user performs these actions, provide information toadvertisers about the user's interests and intentions.

Example Operating Environments

Except where indicated, illustrated mobile and network operatingenvironments are unnecessary for a full appreciation of variousembodiments of the invention, and will not be repeated here. Suchillustrated mobile and network operating environments can be found in,for example, application Ser. No. 11/651,102 entitled “Clustered SearchProcessing.” FIG. 1 illustrates a high-level schematic of a mobiledevice having a web browser, with the mobile device in communicationwith a server. The server is connected to a network and includes apersonalized content engine configured to aggregate and displaydisparate types and sources of content, a search engine that isconfigured to perform a search of the network and a user data trackingengine for instrumenting and recording user's behavior.

In FIG. 1, networked system 100 includes a mobile device 110 incommunication with a server 130 using network 104. In an embodiment, thenetwork 104 is the Internet, but it could also be a non-public networksuch as a telecommunications carrier. Server 130 includes a set of oneor more search and data applications 134. Search and data applications134 include personalized content engine 140, configured to generate andmaintain a “home page” of personalized content types and sources in onecentralized display, and search engine 150 configured to performsearches of data accessible via the network and the Internet. In anembodiment, personalized content engine 140 corresponds to is the Yahoo!onePlace mobile home page and search engine 150 is configured to searcha private network of user data such as Yahoo! or Google.

Search and data applications 134 also include one or more of thefollowing modules: User Data Store (UDS) 152, Mobile Search RefineManager 154, Search Module 156, and Search Clustering Module 158. Theseparticular naming conventions are not necessary from any technicalstandpoint to understand the methods and systems disclosed herein, butare provided for the convenience of the reader. These modules will notbe described in a serial fashion, but will be introduced as certainfeatures and embodiments are illustrated. Although each module isdescribed separately from search engine 150, each module could beincorporated into search engine 150.

Mobile device 110 may include a mobile telephone, gaming or readingdevice or another wireless device (such as Wi-Fi or Bluetooth, forexample) that provides access to one or more interconnected networks104. Mobile device 110 includes an interactive application 120 thatpermits browsing of content and data using display 126.

Before describing an illustrated operating environment in which variousembodiments may be practiced, concepts including “social relations andassociations” and “metadata” are introduced and described below. Later,during discussion of various embodiments, additional refinements tothese concepts may be described.

Social Relations and Associations

Social relations and associations connect people to activities and oneanother. A social relations and associations graph may be constructedfrom nearly any activity, from dating to professional organizations,with some networks not focused on a particular activity, but instead aset of personal or familial relationships.

Social relations and associations have expanded from interpersonalactivities such as bowling leagues and now encompass any manner ofoffline or online activity and connections, typically made through theInternet and intertwined into the World Wide Web.

An individual's social relations and associations graph is not usuallystatic, as movements and interactions among an individual and his or hersocial relations and associations may be a function of one or more ofthe following non-limiting factors: (1) where the individual is; (2) thetime; (3) who the individual is interacting with, either physically orvia online social relations and associations; and (4) what theindividual is doing.

Many variations, combinations, and/or refinements of these factors canbe relevant; for example, the individual may be planning andcoordinating a family reunion involving a variety of direct and indirectpersonal relationships that change through time. Information related tothese factors may be captured by the mobile device or by a networkserver. Some methods and systems for the collection and use of socialrelations and associations information is disclosed in both applicationSer. No. 12/069,731 entitled “Identifying and Employing Latent SocialNetwork Relationships,” and application Ser. No. 12/182,756 entitled“Social Aspects of Content Aggregation, Syndication, Sharing, andUpdating.”

Metadata

As described above with respect to an individual's social relations andassociations, a description representing an individual's currentactivities may include some or all of the factors relating to the“Where,” the “When,” the “Who,” and the “What,” which provide acontinuous path/state data stream on the user and provide exact contextfor any user-originating requests such as search or loading a mobilehome page. When used to describe particular data about an individual,these factors are themselves metadata called for example a user's W4metadata including one or more of spatial metadata, temporal metadata,social metadata, object metadata and/or topical metadata.

As described herein, each of the (1) operating environment, (2) mobileclient environment, (3) server environment and (4) operation of mobilesearch queries in conjunction with location modifiers, can be furtherextended with reference to metadata wrappers, including user W4metadata, placed around data that is exchanged among mobile clients,servers, and (optionally) administrators or third party serviceproviders.

User W4metadata includes contextual metadata which relate to the“Where,” the “When,” the “Who,” and/or the “What” of any given event,e.g., a text message or voice communication. That is, W4 metadata mayinclude information which is spatial or geographic in nature (i.e., the“Where”), temporal (i.e., the “When”), social (i.e., the “Who”), and/orrelated to physical objects or topical interests (i.e., the “What”). Inaddition, the relevance of at least some of these aspects may bedetermined by analyzing the similarity of these aspects among usergroups, as well as patterns of these similarities within and among therespective spatial, temporal, social, and topical aspects.

As described further herein, the context provided by user W4 metadataaids in the disambiguation of mobile search queries, which in turnpermits improved clustering of search terms and search results.

For example, a user enters the query “apple.” In addition to text in orassociated with web pages and documents, the term “apple” can be mappedto a number of abstract ideas, real world objects, and digital objectsand media. Collectively, these things are referred to herein as“entities.” In this example, the disambiguation is performed on thestring “apple” to determine at least some of the possible entities“apple” might represent, e.g., the company, the fruit, the record label,etc., each of which may then be mapped to one or more result types. Inaddition, disambiguation can preference recent real-world or onlinebehavior data to preference certain results. For example, if the userwas in the Apple Mac Store yesterday and made a purchase, then thedisambiguation might preference local receipts or product informationpages the user recently accessed in conjunction with the user's priorpurchase or research.

For example, if the entity is Apple® the company, the different resulttypes might include geographic results (e.g., company or storelocations), stock price, news stories (e.g., text and video), as well asconventional web and mobile web links. As described further herein,clusters of result types based on the entity or entities identified inthe disambiguation phase and their respective mappings to result typesmay be rendered or manipulated. Additional information regardingdisambiguation of search queries can be found in application Ser. No.11/651,102, entitled “Clustered Search Processing.”

For example, FIG. 15 represents a subset of the oneSearch entity typesorganized by hierarchical type-subtype relations. Additional relationsamong entities and entity types may include numeric and symbolicrelationships, as well as composite entity types such as “events” whichlink other entity types such as places, times, people, etc.

In FIG. 15, for example, row 1510 references the entity “Apple Computer”(corresponding to the discussion above) and row 1520 references theentity “Pizza Restaurant.”

Entities may also exist in multiple categories. For example, thetelevision series Lost could exist in the TV shows category ofEntertainment Information Objects yet also be referenced in the Actorcategory of Entertainment People. Likewise, Pizza could be BusinessListing, Venue, Place as well as a recipe entry in Wikipedia, Reference,or Information Object.

Incorporation of entities and entity types represents an important shiftaway from the mere bookmarking of web pages, as it permits savingpointers to entities that may have real time information feeds or forwhich real time information feeds may be created. For example, considera static bookmark to the website “www.examplemovie.com”, as compared tobookmarking the entity “examplemovie,” from which it is possible toreceive automatic updates regarding reviews, local playing times, DVDrelease notices, etc. relating to “examplemovie.”

Sample Mobile User and Network Configurations

Various embodiments of the networked system above are now described, inwhich the capture and transmission of metadata is then used to enhancethe mobile user browsing interaction and consumption experience.

With reference to FIG. 1, storage of metadata and other user informationsuch as social relations and associations information may beaccomplished by User Data Store (UDS) 152 that is part of search anddata applications 134 on server 130. UDS 152 may include a database,text, spreadsheet, folder, file, or the like, and may be configured tomaintain and store social relations and associations information ascollected from network 104 as well as associated networks or user datasources. For example, a four dimensional map of a mobile device may beused as a proxy for the user's historical and current location, stateand association with other nearby or related users.

In an embodiment, social relations and associations information storedin UDS 152 for a mobile user includes one or more of the following: (1)the user's identification information for social networking websites towhich the user belongs, such as MySpace, Facebook, or LinkedIn; (2)contact information maintained by the user, such as for voice contact,electronic mail, instant messaging, and text messaging; (3) membershipgroups to which the user belongs; (4) subscriber information ofindividuals that subscribe to user-created content, such as subscribersto the user's Flickr account or the user's blog and (5) any otheraccessible source of data on the user's location, association, actions,interests or transactions.

In an embodiment, social relations and associations information storedin UDS 152 for a mobile user includes electronic communications sent orreceived by the mobile user, such as electronic mail, instant messaging,and text messaging, while other embodiments combine information frommultiple devices, mobile and stationary to include all known data,communications and transactions for the user.

In an embodiment, location information based both on a user's actual andpast path data as well as on a user's physical residence(s), accountregistration information, locations of interests the user has implicitlyor explicitly shared with the system, or the like, may also be storedwithin UDS 152. Such information may indicate that the user resides in aparticular town, neighborhood, city, or the like, within a particularcounty, state, country, or the like, or is interested in a givenlocation (e.g. venue, district, city, region, etc.), or the like. Suchlocation information may also be configured and arranged, in oneembodiment, in a hierarchical relationship.

In an embodiment, mobile status information that is related to the usermay also be stored within UDS 152. Such mobile status information mayinclude one or more of following: (1) the name, operating system, andCPU of mobile device 110; (2) the current status, location and/or usagehistory of mobile device 110, such as when and how long it has beenpowered on and accessed as well as to which cell towers or network nodesit has been communicatively connected with; (3) status information ofapplications 242 loaded on or currently operating on mobile device 110,such as information related interactive application 120; (4) contents ofdata storage of mobile device 110; and (5) information such ascoordinate history from GPS of mobile device 110, from which a user'smobile status (such as that the user is located in a slow-movingtransportation device on a particular freeway) may be derived. Usagehistory includes both active interaction data created by the user'sactions, as well as passive data such as location of the user, proximityto known landmarks or Points of Interest (POI), and association otherco-present users, devices, networks, vehicles or appliances.

In an embodiment, social networking information may be obtained once auser has provided account access to the user's social network orelectronic mail accounts.

In an embodiment, social relations and associations information may beobtained indirectly through monitoring various movements, actions andinteractions of a user. Interactions may be monitored though use of abrowser toolbar activated by the user, in which some or all data sent tomobile device 110 is forwarded to UDS 152 as well as any other knownmethod of instrumenting a mobile device to track user interactionincluding orientation, biometric and motion sensing. Thus, for example,the implicit social relations and associations data and/or contactinformation may be extracted based on data from the users' respectivedevices, environmental sensors or data feeds and/or the content within amessage between the user and another user whether or not they are bothmembers of an explicit social network.

Information such as social networking information, communicationsinformation, location information, and mobile path or statusinformation, is stored within UDS 152, and may be passed with other dataas a “metadata wrapper”. As described below, a metadata wrapper mayprovide contextual information or content information to the data inwhich it accompanies. A non-limiting example of a vocabulary in whichmetadata may be propagated, including use of properties, objects, anddatatypes, is provided below in the Section entitled “Sample MetadataVocabulary.”

Information stored within UDS 152 may be passed to Mobile Search RefineManager (MSRM) 154. MSRM 154 is configured to receive the search queryfrom a user, parse the search query into one or more primary searchterms, and provide contextual modifiers based upon information regardingthe user stored within UDS 152. Additional features of MSRM 154,including processing of contextual and concept-based searches, aredescribed in application Ser. No. 11/651,102, entitled “Clustered SearchProcessing.”

In an embodiment, contextual modifiers are provided in a metadatawrapper passed to MSRM 154 from mobile device 110; for example, themetadata wrapper may comprise data accompanying or part of a searchquery sent from mobile device 110. In an embodiment, contextualmodifiers are provided to MSRM 154 by UDS 152.

In an embodiment, MSRM 154 identifies any concept-specific data sourcesto be searched. One embodiment of a method in which third-parties mayprovide customizable data sources will be described later with respectto FIGS. 5-6.

Using the information stored in UDS 152, MSRM 154 then fashions amodified search query to be processed by Search Module 156, along withan indication of any concept-specific data sources to be searched.

Search results provided by Search Module 156 may be clustered intogroups, and optionally ranked, as disclosed in application Ser. No.11/651,102, entitled “Clustered Search Processing.” In an embodiment,search results from Search Module 156 are then passed to SearchClustering Module 158. In an embodiment, metadata passed to SearchModule 156 is also passed to Search Clustering Module 158.

Additionally, search results as determined with respect to mobile usermetadata may also be modified based on metadata derived from one or bothof concept-specific and content-specific data sources. The correspondingsearch results may be clustered by source, terms, concept or content.

For example, metadata identified by one or both UDS 152 and MSRM 154 maybe matched to search results based on a matching concept-specific datasource.

In an embodiment, search results are combined with other known datasources to create a “virtual cluster” that may be presented to the userin the same or a similar manner in which actual clustered results arepresented to the user.

In an embodiment, concepts identified by Search Clustering Module 158used to cluster results are attached to the results as metadata. In anembodiment, the identified concepts are used to determine a result typeor relative rank based on the entity or entities identified in thedisambiguation phase.

In an embodiment, metadata representing the user's mobile statusinformation may be used to construct the layout of search resultsappearing on display 126 of mobile device 100.

In this manner, metadata from many different sources regarding the userand context is used to personalize the current mobile user's search ordynamic page assembly requests. Metadata describing the user's (1)current activities, (2) current environment, (3) social relations andassociations, (4) third party evaluations, reputations, rankings orother quality scoring metric, e.g. credit score, etc., and (4) searchquery is combined with metadata generated by concept-specific,context-specific, or content-specific data sources, may be used todeliver relevant information to a mobile user.

Illustrative User Example

Examples of clustering (a) through use of metadata related to mobiledevice usage, (b) in conjunction with disambiguation of strings intoentities, are illustrated in FIGS. 2-4 displaying sample searches andsearch results on a mobile device.

With respect to FIG. 2, in panel 210, the mobile user performs a simplesearch using the term “sushi.” Previously obtained metadata such as theuser's location has been captured and is displayed below the search box;in this example, the user is located “near 3000 Paradise Rd, Las Vegas.”

This location metadata permits the identification and display of nearbybusinesses, such as restaurants, identified as relevant to the searchterm. The restaurants form a cluster of particular instances of theabstract entity type “restaurant.” These results can be further refinedby distance, as shown in panel 210.

Advantageously, the metadata wrapper can be employed by other contentproviders, such as Yelp, Zagat, and OpenTable, and shown under theheading “More business results” in panel 210. These business resultscould be generated based on a combination of the mobile user's location,the search term, and an abstract entity type such as “restaurant,” andpushed to the user.

In panel 220, the user has selected the result for “Sushi Roku in theForum Shops,” and has landed on the informational display page regardingthis restaurant. Although the user is viewing details regarding aparticular instance of the abstract entity “restaurant,” the mobiledevice's display is configured to display links to other relatedinformation, such as a map, user reviews, and more tools, via the linkto “Business details.”

Panels 231, 232, and 233 display the links available from the landingpage for “Sushi Roku.” For the information shown in each panel, metadatawrappers have been applied to describe the data types of the contentsources (such as “review,” “review author,” “photo,” “rating,” etc.)

FIG. 3 illustrates the clustering achieved through the use of metadatawrappers applied in a social networking context. Panel 310 illustrates asearch performed by the user for a person named “Will Decker.” Thissearch may again being performed with reference to the user's currentlocation, as shown in the location information (“near 3000 Paradise Rd,Las Vegas”) below the search box. The search generates a cluster ofprofile information using the abstract class “Contact” with regard tothree applications, Facebook, LinkedIn, and MySpace. In this example,data (including metadata wrappers) from these three applications ispulled from each through an open API framework and assembled by theserver.

Additionally shown in panel 310, each of the instances of the “Contact”class type possess properties that can be used to further refine theresults and aid the user in locating the individual named “Will Decker”that he or she actually knows.

In panel 320, the user has selected the profiles found in Facebook andviews a summary of the various people named “Will Decker” (or a slightvariant thereof) along with additional information, such as a thumbnailphoto and an encapsulated summary about the individual, such as“Berkeley Alum•UChicago Alum,” corresponding to the class “Overview.”

In panel 330, the user has navigated to a representation of Facebookphoto gallery for a particular instance of “Will Decker.” Metadatawrappers including photograph information may be applied by the APIframework, and combined with information regarding the mobile devicephysical features, to present the various Facebook photographs in anattractive manner.

FIG. 4 illustrates the generation of results based on a search yieldingno named cluster results, in which the user is presented with one ormore unnamed, virtual clusters, which themselves may comprise one ormore third-party open abstracts. In panel 410, a mobile user enters thesearch term “Audi tt.” While none of the search results yield a namedcluster, a virtual cluster entitled “2008 Audi TT” is created usingcontent supplied from MotorTrend and Wikipedia conforming to the openabstracts model.

In panel 420, the user has selected the MotorTrend Research icon and ispresented with a landing page assembled from data and metadata that maybe (1) supplied from results obtained from general data sources, or (2)supplied from a MotorTrend API plug-in. Other possibilities forgeneration of results include one or more of the following: (1)generation of a virtual cluster; (2) generation of a series of virtualclusters; and (3) a list of OpenAbstracts that is not clustered butmeets at least one relevancy criterion.

Integrating Content Sources into the Mobile Search Framework

In the illustration provided above in FIGS. 2-4, cluster data fromFacebook, LinkedIn, and MySpace may have been: (1) provided to theserver via a browser toolbar, or (2) pulled from each website through anopen API framework and assembled by the server. A framework for thisintegration of content sources and simple schematics for the clustergeneration via third-party content sources are illustrated in FIGS. 5-6and described below.

FIG. 5 illustrates a mobile search system 500 performing a federatedquery to multiple data sources in which third parties provide plug inmodules to interpret their data into a format usable by the search orpersonalized content processes. The search retrieves data (andassociated metadata) in data stores 511, 512, 513 that comprise a“Content Index.” Data is passed to the Content Index from contentplug-ins 521-524 described below with reference to FIG. 6. Results inmobile search system 500 are also pulled directly from content plug in526.

Each of plug-ins 521-525 either pull data from, or are pushed data by,content sources 531-536. Content sources may comprise applicationprogram interfaces (APIs) and/or content feeds. Additionally, results inmobile search system 500 are also pulled directly by content source 537,which comprises an application program interface (API). As illustrated,data may be pulled from an API or content feed from a third partyprovider to the plug-in; or data may be pushed to the plug via a thirdparty provider's content feed.

FIG. 6 illustrates a sample framework for a plug-in shown in FIG. 5.Plug-in 600 comprises parser 610, an association module 620, andrenderer 630. Parser 610 may comprise a metadata parser or APIRequestor, one or both communicating with one or more of the “ContentSources” shown on FIG. 5. Parsed data, including optional metadatawrappers, are passed from parser 610 to association module 620. Explicitand inferred cluster result mapping is performed by association module620, with results processed by renderer 630. Results in the renderer maybe processed through an XML schema or a template/user interface mapping,providing metadata wrappers (such as clusterIDs, entityIDs, W4 metadata,and content type metadata) that permit the system to determine theappropriate format, rendering, and user actions for the content shown onthe mobile device. Results are then sent to one or more data stores thatcomprise the “Content Index” of FIG. 5.

Incorporation of Search Sources or Results into a Home Page

In the description above, various forms of metadata are used to derivesearch results from a corresponding search query. The search results mayrepresent various types of content, such as text, numerical data, image,animation, audio or video and formats of content such as an RSS feed, alink to a newspaper article, a Wikipedia entry, or portions of a webpage. The user may desire to incorporate one or more search results intothe user's home page or mobile home page that automatically appears whena browser or application is first invoked, or is invoked when the useractivates a “home” command of some type.

Additionally, a search result, or portion of a search result, may itselfbe considered an entity or entity type as previously described; forexample, a web link or RSS feed may be added to, and treated as, anentity or entity type on the user's home page. Items which may be addedinclude: (1) web links; (2) RSS feeds; (3) web links for which RSS feedsare created based on periodically revisiting the link to check forupdates; (4) “entity” or “entity type”; and (5) entities or entity typesadded through the parsing of a web link or RSS feed.

As a non-limiting example, a user may select a search result or anyonline web page or resource for future inclusion, or the user may alsoadd the entity or entities represented within that content to the user'spersonalized content engine. At the time of the user's selection, thepersonalized content engine may automatically or interactively determinewhether the user wishes to add that content, resource, or feed, amongone or multiple associated entities.

Such desirable features may be accomplished via display of searchresults or content objects with an associated icon, checkbox, usergesture, or associated spoken command that when selected or spoken,determines a content type for the selected results and creates acorresponding information feed to be incorporated in the user's homepage or consumption device, e.g., electronic book reading device, orgaming device. The ability for the user to add any search results as aninformation feed is now described with reference to FIG. 7.

FIG. 7 illustrates four components of Add Anything Engine 700 that maybe used to permit the user to add search results to the user's home pageor other information aggregation location or device. It should beunderstood that the elements in FIG. 7 may be easily incorporated inserver 130 shown in FIG. 1. For example, Add Anything Engine 700 may beincorporated into search and data applications 134 on server 130. Forsimplicity, the description below will be made with reference to FIG. 7.

Add Anything Engine 700 includes Query Manager 704, DisplayInstrumentation Manager 708, Content Analyzer 712, and RegistrationManager 716.

Query Manager 704 tracks search query information and related metadataof one or more usage data sets or search histories of the user as wellas across any number of devices or networks associated with the user.

In an embodiment, Query Manager 704 receives information from UDS 152and MSRM 154.

Information from Query Manager 704 is supplied to Content Analyzer 712for use in determination of the particular content type or format to beassociated with the corresponding search result. Content Analyzer 712parses received web links and RSS feeds for determination of thecorresponding entity and entity type.

Some search results, such as RSS feeds, have established protocols forupdates, whereas other search results, such as to a static web page, maynot have an established update protocols. Content Analyzer 712 forwardsresults corresponding to such a static content type to RegistrationManager 716.

Registration Manager 716 may create a recurring information feed out ofa non-feed enabled information object so that the user receives updatedinformation from the corresponding link at various intervals. Forexample, the user may desire to view web page announcements made bygovernment agencies, such as the United States Patent and TrademarkOffice, that do not provide web feeds.

In an embodiment, Registration Manager 716 includes instructions toperiodically fetch the data source corresponding to the non-feed enabledinformation object selected by the user, parse the resulting data, andapply metadata wrappers.

Registration Manager 716 forwards any recurring information feeds toMobile Homepage Manager 720 for display on mobile device 110.

Display Instrumentation Manager 708 controls both the actual display ofthe “add this” icons and receipt of corresponding user input. DisplayInstrumentation Manager 708 forwards selected known information feeds toMobile Homepage Manager 720 and forwards other user selections toRegistration Manager 716 for feed creation. Display InstrumentationManager 708 may also be configured to sense spoken commands and/or usergestures for selecting selected known information feeds to MobileHomepage Manager 720 and Registration Manager 716 for feed creation.

FIGS. 9-13 illustrate an illustrative mobile home page environment andone manner in which a user may add an entity to a mobile device homepage. Panel 910 displays a portion a mobile device screen from which theuser may add content to the user's home page, first by activating theentry entitled “Add Anything to Y! onePlace.” After activation, the useris presented with panel 920. Panel 920 includes area 921 for the user toinput text for a personalized search, with entries at area 921corresponding to a default set of locations from which to add content.Therefore, the “Add Anything” capability may be applied to searchqueries entered by the user and/or to preselected or customized sets ofcontent objects (entities, links, RSS feeds, etc.) presented to the userwithout requiring the user to enter a search query, but which mayutilize contextual and other information about the user, the availableentities, and the device, to present one or more customized and/orpersonalized content objects for possible addition to the user's mobilehome page.

Continuing to FIG. 10, the user viewing panel 1010 has input the text“Red Sox” at area 1011. After activation of the “oneSearch” button inpanel 1010, the user is presented with panel 1020, offering the user avariety of choices from which to select one or more content objects toadd content to the user's mobile home page. Some choices, such as area1022 correspond to an RSS feed that the user may select. Other choicescorrespond to news articles and links to web sites, for example“www.redsox.com.” Area 1021 corresponds to the entity “Boston Red Sox,”which may be associated with one or more information owners, publishersor authors clustered together as described in more detail in Ser. No.11/651,102, filed Jan. 5, 2007, entitled “Clustered Search Processing”and previously incorporated by reference.

In FIG. 11, the user in panel 1110 has selected the first entry 1111corresponding to the entity “Boston Red Sox” to be added to the user'shome page. In an embodiment, a default set of content and sources isautomatically generated by default. In an embodiment, the user mayspecifically select or unselect content sources or objects from thoseassociated with the user's subscription to the entity “Boston Red Sox”in order to assemble an individualized set of aggregated content andsources associated with both the entity and the user. In an embodiment,content associated with entities may be free or fee-based, anonymous orregistered depending on the topic and standards of practice.

A screenshot illustrating the beginning and ending of the user's homepage is shown in FIG. 12. As the screenshot is too long to be adequatelydisplayed herein, panel 1210 represents the ‘top’ of the home page. Thepage scrolls down until panel 1220, representing the ‘bottom’ of thehome page, is reached. As indicated in area 1230, an icon representingthe entity “Boston Red Sox” has been added to the user's home page,providing the user with an easily accessible manner in which to view thesystem's latest personalized set of content corresponding to the BostonRed Sox.

In FIG. 13, panel 1310 illustrates content assembled by the systemcorresponding to the entity “Boston Red Sox.” In FIG. 13, the system hasadded content sources corresponding to score and schedules, upcominggames, news, photos, and a roster. Unlike mere bookmarks, each of thesecontent sources is dynamic, and information from each source may beautomatically retrieved and assembled for the user's consumption. Theselection and presentation of the associated content objects and feedsfor a given entity may also be dynamically altered (i.e., removed,reordered, transcoded into different media types, etc.) based onpreferences or actions of the system, the content publisher, the user,an advertiser, the network operator, the device manufacturer, or anycombination thereof, as well as related to the various aspects ofcontext described above (i.e., spatial, temporal, social, topical, etc.)in which the associated content objects and feeds for a given entity maybe accessed by a user.

FIG. 14 illustrates two views in which the user may reconfigure theuser's mobile home page, including the relative order in which itemsappear. Entry 1430 “Boston Red Sox” demonstrates the new entity added tothe user's current content ordering of their mobile home page and theassociated arrows allow the user to interactively remove, raise or lowerthe order of any entity or content on the list. In an embodiment, theuser may group, name groups, and delete or reorder groups of any entityor content on the list.

Advertisement Personalization

The dynamic mobile user web browsing interaction and content consumptionexperience differs greatly from the traditional, static methods of webbrowsing typically performed on a personal computer tied to home orwork. Attempts to squeeze the traditional web browsing interaction andcontent consumption experience onto a small mobile screen fail to offerthe benefits afforded by the methods and systems disclosed above.

Similarly, use of traditional techniques to squeeze advertising materialonto the mobile screen lead to a negative user experience. Thetraditional techniques lead to ‘one-size-fits-all’ advertisements thatintrude on user experience rather than accentuate it.

Significant improvements are afforded in which actual mobile userhistory is used to (a) rank mobile users against brand and/oradvertiser, and (b) predict specific users for specific advertisers at aspecific campaign and time and/or space combination for delivery. Amethod and system for matching advertisements with mobile users isdescribed below with reference to FIG. 8.

FIG. 8 illustrates a Mobile Homepage Targeting Engine (MHTE) 800, afully customizable personal advertising system for matching specific adcopy or specialized content to specific ad or content deliveryopportunities based upon at least the content, format, configuration andinteraction data created by users and their mobile home pages, such asYahoo's onePlace. It should be understood that the elements in FIG. 8may be easily incorporated in search and data applications on server130.

MHTE 800 may include modules for: (a) managing interaction withadvertisers and publishers; and (b) configuring a user's mobile homepage with ad serving requests generated by one or more of the following:(1) network; (2) users; and (3) third parties.

In an embodiment, MHTE 800 includes Ad Copy Manager 804, Mobile HomePage Manager 808, Matching Manager 812, and Ad Display Manager 816.

Ad Copy Manager 804 interacts with advertisers or publishers, and maypermit advertisers or publishers to perform one or more of thefollowing: (1) register and manage their accounts; (2) submit ad copy orspecialized content; and (3) specify desired actions in the form oftargeting models. Specialized content may be any form of new, updated orexclusive content marketed to the user by an owner, publisher or contentretailer. A targeting model may be a function of one or more of thefollowing user characteristics: (1) type of mobile access device; (2)access network; (3) demographic; (4) current user activity; (5) locationor proximity to one or more known persons, places or things, (6)co-presence of other users, devices or POI, and (7) user history,preferences, or profile, among others.

Ad Display Manager 816 responds to specific ad requests whether from theuser, the network or a third party service, e.g., carrier or ISP topopulate Ad copy or specialized content received from the Ad CopyManager 804 as instructed by the Matching Manager 812 and returns theinstrumented copy for display by the requesting party. Such an adrequest may include information indicating the desired target usercriteria, the amount or maximum amount the advertiser is willing to pay,limitations or conditions of display, and the duration of the offer.

Mobile Homepage Manager 808 instruments and tracks user content,configuration and interaction with the user's mobile home page or otherselected web page including spoken, tactile and sensed inputs.

Matching Manager 812 applies targeting models to user profiles toqualify, score and select ad copy or specialized content for serving inresponse to ad requests handled by Ad Display Manager 816. Data fromMobile Homepage Manager 808 may be forwarded to Matching Manager 812 forrefinement or construction of various ad targeting models.

The following non-limiting examples illustrate some of the benefitsafforded by MHTE 800. In a first example, the user has added “PizzaRestaurant” as an entity to onePlace, in order to receive updates suchas special promotions, recent reviews, grand openings or any othercontent, feed or source of information relevant to the entity in thevicinity of the potential target user's current location, home, work orother locations of interest, e.g., regularly visited cities, locationsdesignated of interest by the user, etc. Such an entity “PizzaRestaurant” appears as row 1520 in the non-limiting sample subset ofoneSearch entity types illustrated in FIG. 15. The user would be thenconsidered by MHTE 800 as a potential target eligible to receivecustomized advertising materials or specialized content.

After the user has added “Pizza Restaurant” as an entity on onePlace,the user would then receive updates when any local pizza restaurantspublish new specials or content, when a review is written about a pizzarestaurant and/or when a new pizza restaurant opens up near a locationof interest. Additional qualification may be achieved by noting theuser's other entities on onePlace, and the placement of these andrelated entities on the home page relative to each other as well asdiscarded, rejected or unchosen content. The level and type of useractivity associated with each entity over time may be used to determineeach entity's relative value in targeting advertising or specializedcontent to that user. Content targeting from publishers, as well as adtargeting from advertisers, may be incorporated.

Information regarding the same user may arrive into MHTE 800 throughadditional interactions by the user. For example, the user may have alsoadded “vegetarian recipes” to onePlace which can be combined with thetargeting information derived from the user's interactions with the“Pizza Restaurant” entity to develop a targeting profile that the userwould likely prefer content, advertisements, or promotions related to“vegetarian pizzas” as opposed to “nonvegetarian pizzas.”

An illustration of the benefits afforded by MHTE 800 might be asfollows: a pizza maker seeks new customers in a particular area. Thepizza maker supplies ad copy or specialized content to Ad Copy Manager804, along with target data supplied to Ad Display Manager 816.

The target data seeks males aged 18-34 who tend to eat out. MatchingManager 812 identifies a set of potential targets, including the userdescribed above.

Matching Manager 812 is alerted, reviews the placement of entities onthe user's home page and considers the level and type of user activityassociated with the entities in the determination of targetedadvertisements and content for the user. In this example, MatchingManager 812 configures an advertisement for a meatless pizza special,served by the pizza maker at its nearby establishment. Thisadvertisement is delivered to the user by Mobile Homepage Manager 808.

In a related example, the user enters a search request for “restaurant”received by Mobile Home Page Manager 808. Matching Manager 812 reviewsthe user's metadata and search history and identifies the user as apotential target.

In addition to the existence of the “Vegetarian Recipes” entity in theuser's Yahoo! onePlace in the user's Yahoo! Mobile Home Page, additionaldata and metadata may further enhance the user targeting profile, suchas the potential target's prior search history including severalsearches using the term “vegetarian” in Yahoo! oneSearch, andadditionally, the target having posted status updates to MySpace fromYahoo! oneConnect regarding vegetarian recipes.

Matching Manager 812 is alerted, reviews the user's metadata includingsocial relations and associations history, and configures anadvertisement for the meatless pizza special, served by the pizza makerat its nearby establishment. This advertisement is delivered to the userby Mobile Homepage Manager 808 along with search results.

FIG. 14 illustrates two manners in which a user's placement of entitieson the user's home page may be used by Matching Manager 812 as part ofthe advertisement personalization process. Panel 1410 illustrates a usersetting panel to coordinate the user's various electronic mail accounts,instant messagers, social networks, contacts, and calendar. When listinginformation of these kinds, it is customary for the user to place theuser's favorite entries near the top of each list. Thus, in panel 1410,it appears the user is more actively uses the user's Facebook accountthan the user's MySpace account, as evidenced by the relative ranking ofthe two entries.

As explained above, Matching Manager 812 may use these types of metrics,such as, ranking within group or between groups, as part of theadvertisement personalization process increasing the weight of aparticular user to an entity or brand based upon a higher order on theirmobile home page or strong associations through past, current orpredicted activities.

Similarly, panel 1420 corresponds to the user selected ordering ofentities, such as those illustrated in FIGS. 9-13. For example, theentity ordering shown in panel 1420 corresponds to all entities shown inFIG. 12; note the final entity of “Boston Red Sox.” In panel 1420, theuser is able to reorder the user's entries as described above. MatchingManager 812 may use this ordering, for example, to select a particularadvertisement from a pool of eligible advertisements, with the selectedadvertisement displayed to the user whereby content and entitiesassociated with a mobile home page influence the selection of theadvertisement by increasing the rank of potential advertisements relatedto content or entities to which the user is subscribed. In addition, auser's deselection of content or advertisers in the past may also beused to influence the ranking.

Hardware Overview

According to one embodiment, the techniques described herein areimplemented by one or more special-purpose computing devices. Thespecial-purpose computing devices may be hard-wired to perform thetechniques, or may include digital electronic devices such as one ormore application-specific integrated circuits (ASICs) or fieldprogrammable gate arrays (FPGAs) that are persistently programmed toperform the techniques, or may include one or more general purposehardware processors programmed to perform the techniques pursuant toprogram instructions in firmware, memory, other storage, or acombination. Such special-purpose computing devices may also combinecustom hard-wired logic, ASICs, or FPGAs with custom programming toaccomplish the techniques. The special-purpose computing devices may bedesktop computer systems, portable computer systems, handheld devices,mobile telephones, browsing or gaming devices, networking devices or anyother device that incorporates hard-wired and/or program logic toimplement the techniques.

For example, FIG. 16 is a block diagram that illustrates a computersystem 1600 upon which an embodiment of the invention may beimplemented. Computer system 1600 includes a bus 1602 or othercommunication mechanism for communicating information, and a hardwareprocessor 1604 coupled with bus 1602 for processing information.Hardware processor 1604 may be, for example, a general purposemicroprocessor.

Computer system 1600 also includes a main memory 1606, such as a randomaccess memory (RAM) or other dynamic storage device, coupled to bus 1602for storing information and instructions to be executed by processor1604. Main memory 1606 also may be used for storing temporary variablesor other intermediate information during execution of instructions to beexecuted by processor 1604. Such instructions, when stored in storagemedia accessible to processor 1604, render computer system 1600 into aspecial-purpose machine that is customized to perform the operationsspecified in the instructions.

Computer system 1600 further includes a read only memory (ROM) 1608 orother static storage device coupled to bus 1602 for storing staticinformation and instructions for processor 1604. A storage device 1610,such as a magnetic disk or optical disk, is provided and coupled to bus1602 for storing information and instructions.

Computer system 1600 may be coupled via bus 1602 to a display 1612, suchas a cathode ray tube (CRT), for displaying information to a computeruser. An input device 1614, including alphanumeric and other keys, iscoupled to bus 1602 for communicating information and command selectionsto processor 1604. Another type of user input device is cursor control1616, such as a mouse, a trackball, or cursor direction keys forcommunicating direction information and command selections to processor1604 and for controlling cursor movement on display 1612. This inputdevice typically has two degrees of freedom in two axes, a first axis(e.g., x) and a second axis (e.g., y), that allows the device to specifypositions in a plane. Input device 1614 may also be a mobile telephone,gaming, reading, browsing or communication device that may includespeech and recording (audio), visual (video and image), tactile andgestural input or sensing input capabilities as well as audio, visualand tactile output capabilities and multi-channel communicationcapabilities that is interactively connected through one or morenetworks such as to report its state and location in real-time over timeand facilitate access to content and users.

Computer system 1600 may implement the techniques described herein usingcustomized hard-wired logic, one or more ASICs or FPGAs, firmware and/orprogram logic which in combination with the computer system causes orprograms computer system 1600 to be a special-purpose machine. Accordingto one embodiment, the techniques herein are performed by computersystem 1600 in response to processor 1604 executing one or moresequences of one or more instructions contained in main memory 1606.Such instructions may be read into main memory 1606 from another storagemedium, such as storage device 1610. Execution of the sequences ofinstructions contained in main memory 1606 causes processor 1604 toperform the process steps described herein. In alternative embodiments,hard-wired circuitry may be used in place of or in combination withsoftware instructions.

The term “storage media” as used herein refers to any media that storedata and/or instructions that cause a machine to operation in a specificfashion. Such storage media may comprise non-volatile media and/orvolatile media. Non-volatile media includes, for example, optical ormagnetic disks, such as storage device 1610. Volatile media includesdynamic memory, such as main memory 1606. Common forms of storage mediainclude, for example, a floppy disk, a flexible disk, hard disk, solidstate drive, magnetic tape, or any other magnetic data storage medium, aCD-ROM, any other optical data storage medium, any physical medium withpatterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, NVRAM, anyother memory chip or cartridge.

Storage media is distinct from but may be used in conjunction withtransmission media. Transmission media participates in transferringinformation between storage media. For example, transmission mediaincludes coaxial cables, copper wire and fiber optics, including thewires that comprise bus 1602. Transmission media can also take the formof acoustic or light waves, such as those generated during radio-waveand infra-red data communications.

Various forms of media may be involved in carrying one or more sequencesof one or more instructions to processor 1604 for execution. Forexample, the instructions may initially be carried on a magnetic disk orsolid state drive of a remote computer. The remote computer can load theinstructions into its dynamic memory and send the instructions over atelephone line using a modem. A modem local to computer system 1600 canreceive the data on the telephone line and use an infra-red transmitterto convert the data to an infra-red signal. An infra-red detector canreceive the data carried in the infra-red signal and appropriatecircuitry can place the data on bus 1602. Bus 1602 carries the data tomain memory 1606, from which processor 1604 retrieves and executes theinstructions. The instructions received by main memory 1606 mayoptionally be stored on storage device 1610 either before or afterexecution by processor 1604 as well as on mobile device 1614 where itmay utilize wireless data transmission, wireless client-servercommunications, and wireless peer-to-peer communications to delivermobile applications.

Computer system 1600 also includes a communication interface 1618coupled to bus 1602. Communication interface 1618 provides a two-waydata communication coupling to a network link 1620 that is connected toa local network 1622. For example, communication interface 1618 may bean integrated services digital network (ISDN) card, cable modem,satellite modem, or a modem to provide a data communication connectionto a corresponding type of telephone line. As another example,communication interface 1618 may be a local area network (LAN) card toprovide a data communication connection to a compatible LAN. Wirelesslinks may also be implemented. In any such implementation, communicationinterface 1618 sends and receives electrical, electromagnetic or opticalsignals that carry digital data streams representing various types ofinformation.

Network link 1620 typically provides data communication through one ormore networks to other data devices. For example, network link 1620 mayprovide a connection through local network 1622 to a host computer 1624or to data equipment operated by an Internet Service Provider (ISP)1626. ISP 1626 in turn provides data communication services through theworld wide packet data communication network now commonly referred to asthe “Internet” 1628. Local network 1622 and Internet 1628 both useelectrical, electromagnetic or optical signals that carry digital datastreams. The signals through the various networks and the signals onnetwork link 1620 and through communication interface 1618, which carrythe digital data to and from computer system 1600, are example forms oftransmission media.

Computer system 1600 can send messages and receive data, includingprogram code, through the network(s), network link 1620 andcommunication interface 1618. In the Internet example, a server 1630might transmit a requested code for an application program throughInternet 1628, ISP 1626, local network 1622 and communication interface1618.

The received code may be executed by processor 1604 as it is received,and/or stored in storage device 1610, or other non-volatile storage forlater execution.

Embodiments of the invention may also be directed to computer programproducts comprising software stored on any computer readable mediumincluding mobile telephones or computing devices. Such software, whenexecuted in one or more data processing devices, causes a dataprocessing device(s) to operate as described herein. Embodiments of thepresent invention employ any computer readable medium, known now or inthe future. Examples of computer readable mediums include, but are notlimited to, primary storage devices (e.g., any type of random accessmemory) and secondary storage devices (e.g., hard drives, floppy disks,CD ROMS, zip disks, tapes, magnetic storage devices, optical storagedevices, MEMs, nanotechnology-based storage device, etc.).

In the foregoing specification, embodiments of the invention have beendescribed with reference to numerous specific details that may vary fromimplementation to implementation. Thus, the sole and exclusive indicatorof what is the invention, and is intended by the applicants to be theinvention, is the set of claims that issue from this application, in thespecific form in which such claims issue, including any subsequentcorrection. Any definitions expressly set forth herein for termscontained in such claims shall govern the meaning of such terms as usedin the claims. Hence, no limitation, element, property, feature,advantage or attribute that is not expressly recited in a claim shouldlimit the scope of such claim in any way. The specification and drawingsare, accordingly, to be regarded in an illustrative rather than arestrictive sense.

1. A method, comprising: adding, to a page, information items from aninformation feed that contains information about a particular entity;wherein adding information items from the information feed includes:determining one or more information sources, associated with aparticular content object, that contain information about the particularentity; creating the information feed for the particular entity based,at least in part, on information items from the one or more informationsources that contain information about the particular entity; andmodifying the page to cause the page to display one or more of theinformation items from the information feed; wherein the particularcontent object is a non-feed enabled information object; wherein aregistration manager updates the information feed by periodicallyfetching data from an information source that corresponds to thenon-feed enabled information object; and wherein the method is performedby one or more computing devices.
 2. The method of claim 1, wherein theparticular entity is one of a person, place, thing, organization,association, location, business, event, object, vehicle, device,appliance, tag, label, link, date, time, or time period.
 3. The methodof claim 1, further comprising in response to the registration managerupdating the information feed, adding, to the page, additional itemsfrom the information feed.
 4. The method of claim 1, further comprisingsupplying the information feed to a user-selected device.
 5. The methodof claim 1, further comprising tracking metadata from one or more searchhistories of a user, wherein determining the one or more informationsources is based, at least in part, on the metadata.
 6. The method ofclaim 1, further comprising accessing at least one of the one or moreinformation sources using a web link.
 7. One or more non-transitorystorage media storing instructions which, when executed by one or morecomputing devices, cause performance of the method recited in claim 1.8. One or more non-transitory storage media storing instructions which,when executed by one or more computing devices, cause performance of themethod recited in claim
 2. 9. One or more non-transitory storage mediastoring instructions which, when executed by one or more computingdevices, cause performance of the method recited in claim
 3. 10. One ormore non-transitory storage media storing instructions which, whenexecuted by one or more computing devices, cause performance of themethod recited in claim
 4. 11. One or more non-transitory storage mediastoring instructions which, when executed by one or more computingdevices, cause performance of the method recited in claim
 5. 12. One ormore non-transitory storage media storing instructions which, whenexecuted by one or more computing devices, cause performance of themethod recited in claim
 6. 13. A server comprising: one or moreprocessors; memory operatively coupled to the one or more processors;sequences of instructions stored in the memory; wherein the sequences ofinstructions include instructions for adding, to a page, informationitems from an information feed that contains information about aparticular entity; wherein adding information items from the informationfeed includes: determining one or more information sources, associatedwith a particular content object, that contain information about theparticular entity; creating the information feed for the particularentity based, at least in part, on information items from the one ormore information sources that contain information about the particularentity; modifying the page to cause the page to display one or more ofthe information items from the information feed; wherein the particularcontent object is a non-feed enabled information object; wherein aregistration manager updates the information feed by periodicallyfetching data from an information source that corresponds to thenon-feed enabled information object.
 14. The server of claim 13, whereinthe particular entity is one of a person, place, thing, organization,association, location, business, event, object, vehicle, device,appliance, tag, label, link, date, time, or time period.
 15. The serverof claim 13, wherein the sequences of instructions include instructionsfor in response to the registration manager updating the informationfeed, adding, to the page, additional items from the information feed.16. The server of claim 13, wherein the sequences of instructionsinclude instructions for supplying the information feed to auser-selected device.
 17. The server of claim 13, wherein the sequencesof instructions include instructions for tracking metadata from one ormore search histories of a user and determining the one or moreinformation sources is based, at least in part, on the metadata.
 18. Theserver of claim 13, wherein the sequences of instructions includeinstructions for accessing at least one of the one or more informationsources using a web link.